Detecting Stack Layout Corruptions with Robust Stack Unwinding
نویسندگان
چکیده
The stack is a critical memory structure to ensure the correct execution of programs because control flow changes through the data stored in it, such as return addresses and function pointers. Thus the stack has been a popular target by many attacks and exploits like stack smashing attacks and return-oriented programming (ROP). We present a novel system to detect the corruption of the stack layout using a robust stack unwinding technique and detailed stack layouts extracted from the stack unwinding information for exception handling widely available in off-the-shelf binaries. Our evaluation with real-world ROP exploits has demonstrated successful detection of them with performance overhead of only 3.93% on average transparently without accessing any source code or debugging symbols of a protected binary.
منابع مشابه
A stack-based chaotic algorithm for encryption of colored images
In this paper, a new method is presented for encryption of colored images. This method is based on using stack data structure and chaos which make the image encryption algorithm more efficient and robust. In the proposed algorithm, a series of data whose range is between 0 and 3 is generated using chaotic logistic system. Then, the original image is divided into four subimages, and these four i...
متن کاملBaseband Attacks: Remote Exploitation of Memory Corruptions in Cellular Protocol Stacks
Published attacks against smartphones have concentrated on software running on the application processor. With numerous countermeasures like ASLR, DEP and code signing being deployed by operating system vendors, practical exploitation of memory corruptions on this processor has become a time-consuming endeavor. At the same time, the cellular baseband stack of most smartphones runs on a separate...
متن کاملStack and Queue Layouts of Directed Acyclic Graphs: Part II
Stack layouts and queue layouts of undirected graphs have been used to model problems in fault tolerant computing and in parallel process scheduling. However, problems in parallel process scheduling are more accurately modeled by stack and queue layouts of directed acyclic graphs (dags). A stack layout of a dag is similar to a stack layout of an undirected graph, with the additional requirement...
متن کاملA Stack-Based Routing Methodology For Nanometric Analogue CMOS Devices
In this paper, we present a nanometric layout generation tool for analogue building blocks called devices. We focus on the procedural routing methods inside devices. A device may have one or more folded transistors’ fingers merged into at least one stack depending on the chosen layout style. We present two routing methods: intra-stack and inter-stack to ease the routing of the wired segments. T...
متن کاملCustom Calling Conventions in a Portable Assembly Language
Calling conventions are so difficult to implement and maintain that people rarely experiment with alternatives. The primary sources of difficulty appear to be parameter passing and stack-frame layout. To implement parameter passing, we use the automata developed by Bailey and Davidson, but we have developed a new specification language that is implementable directly in the compiler. To implemen...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2016